package com.ym.medical.domain.param;


import com.ym.common.constant.BeanCovert;
import com.ym.medical.domain.entity.DoctorNavInforEntity;
import com.ym.medical.enums.DoctorNavInforEduEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;


@Data
@ApiModel(value = "医生信息表")
public class DoctorNavInforParam  extends BeanCovert<DoctorNavInforEntity> implements Serializable {
	@ApiModelProperty("id")
	@NotNull(message = "id不能为空!", groups = {Update.class})
	private Long id;

	@ApiModelProperty("医生姓名")
	@Size(max = 32, message = "医生姓名长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String doctorName;

	@ApiModelProperty("医生员工号")
	@Size(max = 32, message = "医生员工号长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String doctorStaffNo;

	@ApiModelProperty("医院名称")
	@Size(max = 32, message = "医院名称长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String hosName;

	@ApiModelProperty("医院编码")
	@Size(max = 64, message = "医院编码长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String hosCode;

	@ApiModelProperty("科室名称")
	@Size(max = 64, message = "科室名称长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String deptName;

	@ApiModelProperty("科室编码")
	@Size(max = 32, message = "科室编码长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String deptCode;

	@ApiModelProperty("职称(00-主任医师,01-副主任医师,02-主治医师,03-住院医师,09-其他)")
	@Size(max = 2, message = "职称(00-主任医师,01-副主任医师,02-主治医师,03-住院医师,09-其他)长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String title;

	@ApiModelProperty("职务")
	@Size(max = 64, message = "职务长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String job;

	@ApiModelProperty("学历(01-中专,02-专科,03-高中,04-本科,05-硕士,06-博士,07-其他)")
	@Size(max = 2, message = "学历(01-中专,02-专科,03-高中,04-本科,05-硕士,06-博士,07-其他)长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String edu;

	@ApiModelProperty("技术擅长")
	@Size(max = 255, message = "技术擅长长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String expert;

	@ApiModelProperty("医生照片路径")
	@Size(max = 255, message = "医生照片路径长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String photo;

	@ApiModelProperty("创建人")
	private Long creator;

	@ApiModelProperty("创建时间")
	@NotNull(message = "创建时间不能为空!")
	private Date createTime;

	@ApiModelProperty("修改人")
	private Long modifier;

	@ApiModelProperty("修改时间")
	@NotNull(message = "修改时间不能为空!")
	private Date modifyTime;

	@ApiModelProperty("个人简介")
	@Size(max = 2147483647, message = "个人简介长度必须在{min}和{max}之间", groups = {Add.class, Update.class})
	private String info;

	@ApiModelProperty("职称(00-主任医师,01-副主任医师,02-主治医师,03-住院医师,09-其他)")
	private String titleName;

	@ApiModelProperty("学历(01-中专,02-专科,03-高中,04-本科,05-硕士,06-博士,07-其他)")
	private String eduName;

	public interface Add {

	}

	public interface Update {

	}

}
